{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# More efficient data movement with MPI"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Just like [we did](memmap%20Broadcast.ipynb) manually with memmap,\n",
    "you can move data more efficiently with MPI by sending it to just one engine,\n",
    "and using MPI to broadcast it to the rest of the engines.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import socket\n",
    "import os, sys, re\n",
    "\n",
    "import numpy as np\n",
    "\n",
    "import ipyparallel as ipp"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For this demo, I will connect to a cluster with engines started with MPI.\n",
    "\n",
    "One way to do so would be:\n",
    "\n",
    "    ipcluster start -n 64 --engines=MPI --profile mpi\n",
    "    \n",
    "In this directory is a docker-compose file to simulate multiple engine sets launched with MPI.\n",
    "\n",
    "I ran this example with a cluster on a 64-core remote VM,\n",
    "so communication between the client and controller is over the public internet,\n",
    "while communication between the controller and engines is local."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "rc = ipp.Client(profile=\"mpi\")\n",
    "rc.wait_for_engines(64)\n",
    "eall = rc.broadcast_view(coalescing=True)\n",
    "root = rc[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "64"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "len(rc)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "root['a'] = 5"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "%px from mpi4py.MPI import COMM_WORLD as MPI"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We cn get a mapping of IPP rank to MPI rank, in case they mismatch.\n",
    "\n",
    "In recent-enough IPython Parallel,\n",
    "they usually don't because IPython engines request their MPI rank as their engine id."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{0: 0,\n",
       " 1: 1,\n",
       " 2: 2,\n",
       " 3: 3,\n",
       " 4: 4,\n",
       " 5: 5,\n",
       " 6: 6,\n",
       " 7: 7,\n",
       " 8: 8,\n",
       " 9: 9,\n",
       " 10: 10,\n",
       " 11: 11,\n",
       " 12: 12,\n",
       " 13: 13,\n",
       " 14: 14,\n",
       " 15: 15,\n",
       " 16: 16,\n",
       " 17: 17,\n",
       " 18: 18,\n",
       " 19: 19,\n",
       " 20: 20,\n",
       " 21: 21,\n",
       " 22: 22,\n",
       " 23: 23,\n",
       " 24: 24,\n",
       " 25: 25,\n",
       " 26: 26,\n",
       " 27: 27,\n",
       " 28: 28,\n",
       " 29: 29,\n",
       " 30: 30,\n",
       " 31: 31,\n",
       " 32: 32,\n",
       " 33: 33,\n",
       " 34: 34,\n",
       " 35: 35,\n",
       " 36: 36,\n",
       " 37: 37,\n",
       " 38: 38,\n",
       " 39: 39,\n",
       " 40: 40,\n",
       " 41: 41,\n",
       " 42: 42,\n",
       " 43: 43,\n",
       " 44: 44,\n",
       " 45: 45,\n",
       " 46: 46,\n",
       " 47: 47,\n",
       " 48: 48,\n",
       " 49: 49,\n",
       " 50: 50,\n",
       " 51: 51,\n",
       " 52: 52,\n",
       " 53: 53,\n",
       " 54: 54,\n",
       " 55: 55,\n",
       " 56: 56,\n",
       " 57: 57,\n",
       " 58: 58,\n",
       " 59: 59,\n",
       " 60: 60,\n",
       " 61: 61,\n",
       " 62: 62,\n",
       " 63: 63}"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mpi_ranks = eall.apply_async(lambda : MPI.Get_rank()).get_dict()\n",
    "root_rank = root.apply_sync(lambda : MPI.Get_rank())\n",
    "mpi_ranks"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "32"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sz = 512\n",
    "data = np.random.random((sz, sz))\n",
    "megabytes = data.nbytes // (1024 * 1024)\n",
    "megabytes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e3943864933941bbb65e6ad17e3c589f",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "_push:   0%|          | 0/64 [00:00<?, ?tasks/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "CPU times: user 285 ms, sys: 94.4 ms, total: 379 ms\n",
      "Wall time: 4.49 s\n"
     ]
    }
   ],
   "source": [
    "%%time \n",
    "ar = eall.push({'data': data}, block=False)\n",
    "ar.wait_interactive()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "@ipp.interactive\n",
    "def _bcast(key, root_rank):\n",
    "    \"\"\"function to run on engines as part of broadcast\"\"\"\n",
    "    g = globals()\n",
    "    obj = g.get(key, None)\n",
    "    obj = MPI.bcast(obj, root_rank)\n",
    "    g[key] = obj\n",
    "\n",
    "def broadcast(key, obj, dv, root, root_rank):\n",
    "    \"\"\"More efficient broadcast by doing push to root,\n",
    "    and MPI broadcast to other engines.\n",
    "    \n",
    "    Still O(N) messages, but all but one message is always small.\n",
    "    \"\"\"\n",
    "    root.push({key : obj}, block=False)\n",
    "    return dv.apply_async(_bcast, key, root_rank)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "b668be04b0f84dec9ee390cd03d6c677",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "_bcast:   0%|          | 0/64 [00:00<?, ?tasks/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "CPU times: user 252 ms, sys: 58.3 ms, total: 310 ms\n",
      "Wall time: 939 ms\n"
     ]
    }
   ],
   "source": [
    "%%time\n",
    "ar = broadcast('data', data, eall, root, root_rank)\n",
    "ar.wait_interactive()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "And we can quickly check that everyone got the same data by computing its norm"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[0:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.128472",
      "data": {},
      "engine_id": 0,
      "engine_uuid": "891211e6-57b8aa2b7d6f25af4ed58166",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_65",
      "outputs": [],
      "received": "2021-07-01T12:48:50.197128",
      "started": "2021-07-01T12:48:22.931302",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.816377"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[1:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.680619",
      "data": {},
      "engine_id": 1,
      "engine_uuid": "3001de2b-8f6d615f78929b415ce32a8e",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_66",
      "outputs": [],
      "received": "2021-07-01T12:48:50.745773",
      "started": "2021-07-01T12:48:22.943170",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.817329"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[2:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.639033",
      "data": {},
      "engine_id": 2,
      "engine_uuid": "17ab9b06-a011c40b78521577d684cc43",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_67",
      "outputs": [],
      "received": "2021-07-01T12:48:50.703048",
      "started": "2021-07-01T12:48:22.946045",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.817636"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[3:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.540683",
      "data": {},
      "engine_id": 3,
      "engine_uuid": "b0fc7fdd-4f70d0fa14e6d61b6dd10591",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_68",
      "outputs": [],
      "received": "2021-07-01T12:48:50.605694",
      "started": "2021-07-01T12:48:22.947131",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.817846"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[4:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.702786",
      "data": {},
      "engine_id": 4,
      "engine_uuid": "df021a79-5b9b8028a5aa7141579f4375",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_69",
      "outputs": [],
      "received": "2021-07-01T12:48:50.772605",
      "started": "2021-07-01T12:48:22.947130",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.818172"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[5:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:37.488876",
      "data": {},
      "engine_id": 5,
      "engine_uuid": "d5e8c80f-c73e533a55bd51afb3d26d6f",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_70",
      "outputs": [],
      "received": "2021-07-01T12:48:37.554370",
      "started": "2021-07-01T12:48:22.948021",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.818302"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[6:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:49.665052",
      "data": {},
      "engine_id": 6,
      "engine_uuid": "05bc4af5-2756a07a97906403a26df317",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_71",
      "outputs": [],
      "received": "2021-07-01T12:48:50.015755",
      "started": "2021-07-01T12:48:22.948128",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.818412"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[7:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.695631",
      "data": {},
      "engine_id": 7,
      "engine_uuid": "887fbe61-e12daf9c20cf4d7f2049052a",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_72",
      "outputs": [],
      "received": "2021-07-01T12:48:50.763622",
      "started": "2021-07-01T12:48:22.948840",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.818526"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[8:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.445423",
      "data": {},
      "engine_id": 8,
      "engine_uuid": "94165e70-defdad59b99a71bcfc7fee1b",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_73",
      "outputs": [],
      "received": "2021-07-01T12:48:50.528815",
      "started": "2021-07-01T12:48:22.948835",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.818641"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[9:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.774730",
      "data": {},
      "engine_id": 9,
      "engine_uuid": "2781e7ad-1dac46664dfe0486beed5085",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_74",
      "outputs": [],
      "received": "2021-07-01T12:48:50.840703",
      "started": "2021-07-01T12:48:22.948955",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.818748"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[10:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.616393",
      "data": {},
      "engine_id": 10,
      "engine_uuid": "c577ad81-859a4147a866001c6ab7edbc",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_75",
      "outputs": [],
      "received": "2021-07-01T12:48:50.721209",
      "started": "2021-07-01T12:48:22.950217",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.819277"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[11:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.915622",
      "data": {},
      "engine_id": 11,
      "engine_uuid": "310d5bdb-ac6b43b8c2fa4ce0e08d4dde",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_76",
      "outputs": [],
      "received": "2021-07-01T12:48:50.981211",
      "started": "2021-07-01T12:48:22.950208",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.819659"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[12:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.785737",
      "data": {},
      "engine_id": 12,
      "engine_uuid": "4f5b193d-7218dbf2d572c5d34fb0c351",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_77",
      "outputs": [],
      "received": "2021-07-01T12:48:50.852099",
      "started": "2021-07-01T12:48:22.950291",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.820007"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[13:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:39.697442",
      "data": {},
      "engine_id": 13,
      "engine_uuid": "dc16ac72-2a23f6e02bf1ab0367996f31",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_78",
      "outputs": [],
      "received": "2021-07-01T12:48:39.814921",
      "started": "2021-07-01T12:48:22.966935",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.820335"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[14:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.726807",
      "data": {},
      "engine_id": 14,
      "engine_uuid": "b1b15909-7df755cb0ca4842dcf837388",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_79",
      "outputs": [],
      "received": "2021-07-01T12:48:50.791878",
      "started": "2021-07-01T12:48:22.950493",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.820574"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[15:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.628663",
      "data": {},
      "engine_id": 15,
      "engine_uuid": "35441035-b68a08f2ce9fdaaecc4c1152",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_80",
      "outputs": [],
      "received": "2021-07-01T12:48:50.693966",
      "started": "2021-07-01T12:48:22.994602",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.820772"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[16:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.421347",
      "data": {},
      "engine_id": 16,
      "engine_uuid": "114c48af-f61763ef6f909a7c9c57eadf",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_81",
      "outputs": [],
      "received": "2021-07-01T12:48:50.486331",
      "started": "2021-07-01T12:48:22.994688",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.821096"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[17:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.691682",
      "data": {},
      "engine_id": 17,
      "engine_uuid": "b9f25972-9860cac53a7279b6d657e013",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_82",
      "outputs": [],
      "received": "2021-07-01T12:48:50.757985",
      "started": "2021-07-01T12:48:22.994726",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.821323"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[18:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.715872",
      "data": {},
      "engine_id": 18,
      "engine_uuid": "a3d4ceba-416ca9a937350119e602dce6",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_83",
      "outputs": [],
      "received": "2021-07-01T12:48:50.780418",
      "started": "2021-07-01T12:48:23.047753",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.821669"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[19:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.492725",
      "data": {},
      "engine_id": 19,
      "engine_uuid": "75a193b4-0f391c1cfac9198c4594ec11",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_84",
      "outputs": [],
      "received": "2021-07-01T12:48:50.572620",
      "started": "2021-07-01T12:48:22.994736",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.821953"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[20:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.835971",
      "data": {},
      "engine_id": 20,
      "engine_uuid": "0665206f-9c4b6de27b832be25a546eda",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_85",
      "outputs": [],
      "received": "2021-07-01T12:48:50.900277",
      "started": "2021-07-01T12:48:22.994706",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.822160"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[21:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:49.792040",
      "data": {},
      "engine_id": 21,
      "engine_uuid": "f4d2b7e6-a74633d876a77a8f458bf230",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_86",
      "outputs": [],
      "received": "2021-07-01T12:48:50.016916",
      "started": "2021-07-01T12:48:22.994878",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.822380"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[22:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.860646",
      "data": {},
      "engine_id": 22,
      "engine_uuid": "ec0c4b8f-088d8e7a6f69cb1a0e8ce98c",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_87",
      "outputs": [],
      "received": "2021-07-01T12:48:50.929145",
      "started": "2021-07-01T12:48:22.994745",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.822668"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[23:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.533964",
      "data": {},
      "engine_id": 23,
      "engine_uuid": "90c87f1c-dcdaeb6468e83b37671d2b08",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_88",
      "outputs": [],
      "received": "2021-07-01T12:48:50.606625",
      "started": "2021-07-01T12:48:22.994813",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.822875"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[24:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.280271",
      "data": {},
      "engine_id": 24,
      "engine_uuid": "0b41dab6-fb4b93bf5c4a59f7fbbc39c5",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_89",
      "outputs": [],
      "received": "2021-07-01T12:48:50.344952",
      "started": "2021-07-01T12:48:23.000686",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.823167"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[25:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.601199",
      "data": {},
      "engine_id": 25,
      "engine_uuid": "bd051d77-53f49e5e830935bfb9c82b11",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_90",
      "outputs": [],
      "received": "2021-07-01T12:48:50.665948",
      "started": "2021-07-01T12:48:22.994861",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.823514"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[26:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.694464",
      "data": {},
      "engine_id": 26,
      "engine_uuid": "0e78f71b-bcf15a4a02250271a6df2cd6",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_91",
      "outputs": [],
      "received": "2021-07-01T12:48:50.764749",
      "started": "2021-07-01T12:48:23.000709",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.823769"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[27:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.695264",
      "data": {},
      "engine_id": 27,
      "engine_uuid": "e22a045c-d3294a1b4a2622a05d491c0e",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_92",
      "outputs": [],
      "received": "2021-07-01T12:48:50.761962",
      "started": "2021-07-01T12:48:22.994952",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.824007"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[28:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.634449",
      "data": {},
      "engine_id": 28,
      "engine_uuid": "36c7355e-2b0037838ba4ae1211ce2021",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_93",
      "outputs": [],
      "received": "2021-07-01T12:48:50.700310",
      "started": "2021-07-01T12:48:22.994914",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.824283"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[29:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.786914",
      "data": {},
      "engine_id": 29,
      "engine_uuid": "e819f000-12e508990763c571b789450f",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_94",
      "outputs": [],
      "received": "2021-07-01T12:48:50.854801",
      "started": "2021-07-01T12:48:23.240040",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.824557"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[30:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.550575",
      "data": {},
      "engine_id": 30,
      "engine_uuid": "95280ba8-434732dc11b4e43b969298da",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_95",
      "outputs": [],
      "received": "2021-07-01T12:48:50.628650",
      "started": "2021-07-01T12:48:22.995044",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.824756"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[31:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.800780",
      "data": {},
      "engine_id": 31,
      "engine_uuid": "71c5d4dd-edd4c4aee26481efdd619030",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_96",
      "outputs": [],
      "received": "2021-07-01T12:48:50.868585",
      "started": "2021-07-01T12:48:23.000446",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.824904"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[32:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.444602",
      "data": {},
      "engine_id": 32,
      "engine_uuid": "7d82734f-374da07c7a194803ba39d73b",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_97",
      "outputs": [],
      "received": "2021-07-01T12:48:50.509984",
      "started": "2021-07-01T12:48:22.995303",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.825028"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[33:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.619375",
      "data": {},
      "engine_id": 33,
      "engine_uuid": "2c9f8d02-7602e9033a666e13c5150158",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_98",
      "outputs": [],
      "received": "2021-07-01T12:48:50.684372",
      "started": "2021-07-01T12:48:22.995615",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.825147"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[34:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.423219",
      "data": {},
      "engine_id": 34,
      "engine_uuid": "32129703-87c228b1d47acd79eea3843f",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_99",
      "outputs": [],
      "received": "2021-07-01T12:48:50.488004",
      "started": "2021-07-01T12:48:22.998322",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.825259"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[35:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.506219",
      "data": {},
      "engine_id": 35,
      "engine_uuid": "b9a4ab7d-1957488bec00cdcad3e10d70",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_100",
      "outputs": [],
      "received": "2021-07-01T12:48:50.571133",
      "started": "2021-07-01T12:48:22.997218",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.831851"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[36:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.122847",
      "data": {},
      "engine_id": 36,
      "engine_uuid": "5dc694f4-ff68f7cd771380e1481e765e",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_101",
      "outputs": [],
      "received": "2021-07-01T12:48:50.187867",
      "started": "2021-07-01T12:48:22.995131",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.832093"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[37:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.860845",
      "data": {},
      "engine_id": 37,
      "engine_uuid": "831d3ebc-e1519f4da19fa85329126dd0",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_102",
      "outputs": [],
      "received": "2021-07-01T12:48:50.929787",
      "started": "2021-07-01T12:48:22.995104",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.833563"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[38:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.801407",
      "data": {},
      "engine_id": 38,
      "engine_uuid": "433f29b3-d5dd913c0621e1a99c2e9ae5",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_103",
      "outputs": [],
      "received": "2021-07-01T12:48:50.867284",
      "started": "2021-07-01T12:48:22.995175",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.834003"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[39:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.643350",
      "data": {},
      "engine_id": 39,
      "engine_uuid": "d3a0fbc7-8de2c19658d80b14d52e1a55",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_104",
      "outputs": [],
      "received": "2021-07-01T12:48:50.707965",
      "started": "2021-07-01T12:48:23.000891",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.834894"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[40:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.649367",
      "data": {},
      "engine_id": 40,
      "engine_uuid": "84a68b29-0c81da2290a343b0d3f84fa5",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_105",
      "outputs": [],
      "received": "2021-07-01T12:48:50.713645",
      "started": "2021-07-01T12:48:23.004966",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.835361"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[41:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.527088",
      "data": {},
      "engine_id": 41,
      "engine_uuid": "7b232b71-943f4f505a9a90e825d44342",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_106",
      "outputs": [],
      "received": "2021-07-01T12:48:50.592021",
      "started": "2021-07-01T12:48:22.995146",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.835614"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[42:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.685507",
      "data": {},
      "engine_id": 42,
      "engine_uuid": "3f33ae79-ca72a98d07fc740138dc3cf4",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_107",
      "outputs": [],
      "received": "2021-07-01T12:48:50.750173",
      "started": "2021-07-01T12:48:22.995275",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.835835"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[43:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.226160",
      "data": {},
      "engine_id": 43,
      "engine_uuid": "3903e3fe-0de9b15c1041089a0bbe7c60",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_108",
      "outputs": [],
      "received": "2021-07-01T12:48:50.290595",
      "started": "2021-07-01T12:48:23.093535",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.836327"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[44:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.440065",
      "data": {},
      "engine_id": 44,
      "engine_uuid": "8fe6e59d-1cc0683bc44179b50b757dad",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_109",
      "outputs": [],
      "received": "2021-07-01T12:48:50.505390",
      "started": "2021-07-01T12:48:23.010183",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.836661"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[45:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.074913",
      "data": {},
      "engine_id": 45,
      "engine_uuid": "a6a6dc16-93a5d9f4ff026325fb6dbea6",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_110",
      "outputs": [],
      "received": "2021-07-01T12:48:50.144996",
      "started": "2021-07-01T12:48:22.995194",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.836864"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[46:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.779637",
      "data": {},
      "engine_id": 46,
      "engine_uuid": "680e984f-d159cc617330be26aeaf175d",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_111",
      "outputs": [],
      "received": "2021-07-01T12:48:50.847255",
      "started": "2021-07-01T12:48:22.995163",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.837055"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[47:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:49.261789",
      "data": {},
      "engine_id": 47,
      "engine_uuid": "a85b48fa-1528c0d98db5f221397df427",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_112",
      "outputs": [],
      "received": "2021-07-01T12:48:49.338071",
      "started": "2021-07-01T12:48:23.011870",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.837269"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[48:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.246082",
      "data": {},
      "engine_id": 48,
      "engine_uuid": "dc5b621a-4056ed99fabff2bdc62a647c",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_113",
      "outputs": [],
      "received": "2021-07-01T12:48:50.321074",
      "started": "2021-07-01T12:48:23.061152",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.837463"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[49:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.842925",
      "data": {},
      "engine_id": 49,
      "engine_uuid": "159b26b3-35044c6d6d61ed06064a92ac",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_114",
      "outputs": [],
      "received": "2021-07-01T12:48:50.909009",
      "started": "2021-07-01T12:48:23.000712",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.837750"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[50:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.516705",
      "data": {},
      "engine_id": 50,
      "engine_uuid": "a250e10b-e6cbbf6a23729203b434db8b",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_115",
      "outputs": [],
      "received": "2021-07-01T12:48:50.580977",
      "started": "2021-07-01T12:48:23.214306",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.838164"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[51:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.251082",
      "data": {},
      "engine_id": 51,
      "engine_uuid": "db7a3c7a-84cf5bd8e88dc95adc86c0b7",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_116",
      "outputs": [],
      "received": "2021-07-01T12:48:50.328700",
      "started": "2021-07-01T12:48:23.213977",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.838341"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[52:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.799397",
      "data": {},
      "engine_id": 52,
      "engine_uuid": "6d90b2e9-3f8f8290c2cee7501b5d1664",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_117",
      "outputs": [],
      "received": "2021-07-01T12:48:50.864731",
      "started": "2021-07-01T12:48:23.213995",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.838497"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[53:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:49.440072",
      "data": {},
      "engine_id": 53,
      "engine_uuid": "189fdf1e-8d1a3d1fd724dd4d7171f791",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_118",
      "outputs": [],
      "received": "2021-07-01T12:48:49.759866",
      "started": "2021-07-01T12:48:23.214250",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.838658"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[54:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:49.593101",
      "data": {},
      "engine_id": 54,
      "engine_uuid": "d8bd4e39-8396557feefb58a8bcf0545d",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_119",
      "outputs": [],
      "received": "2021-07-01T12:48:49.936687",
      "started": "2021-07-01T12:48:23.214013",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.838804"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[55:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.222915",
      "data": {},
      "engine_id": 55,
      "engine_uuid": "ba4ef2c0-2ecee6e32415c9929cae403f",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_120",
      "outputs": [],
      "received": "2021-07-01T12:48:50.287219",
      "started": "2021-07-01T12:48:23.214172",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.839035"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[56:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.343559",
      "data": {},
      "engine_id": 56,
      "engine_uuid": "8fc80ddf-57fe266d57f503650ab6c399",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_121",
      "outputs": [],
      "received": "2021-07-01T12:48:50.408914",
      "started": "2021-07-01T12:48:23.214236",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.839358"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[57:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.532379",
      "data": {},
      "engine_id": 57,
      "engine_uuid": "665c3adf-9ade0b3dd34919f94b41d631",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_122",
      "outputs": [],
      "received": "2021-07-01T12:48:50.596753",
      "started": "2021-07-01T12:48:23.221598",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.839651"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[58:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.847004",
      "data": {},
      "engine_id": 58,
      "engine_uuid": "7f2dd0b7-eca90acf8cf2adc90145c362",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_123",
      "outputs": [],
      "received": "2021-07-01T12:48:50.912136",
      "started": "2021-07-01T12:48:23.214119",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.840087"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[59:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.604423",
      "data": {},
      "engine_id": 59,
      "engine_uuid": "c9ba8be2-40dafd33e1401fa876887248",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_124",
      "outputs": [],
      "received": "2021-07-01T12:48:50.669061",
      "started": "2021-07-01T12:48:23.226434",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.840345"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[60:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.200885",
      "data": {},
      "engine_id": 60,
      "engine_uuid": "3577a573-9ad726b98b611cead31b4d4b",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_125",
      "outputs": [],
      "received": "2021-07-01T12:48:50.267990",
      "started": "2021-07-01T12:48:23.214172",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.840727"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[61:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.032325",
      "data": {},
      "engine_id": 61,
      "engine_uuid": "cc602c02-9daa79fe97681cec95a7ce2d",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_126",
      "outputs": [],
      "received": "2021-07-01T12:48:50.097424",
      "started": "2021-07-01T12:48:23.214146",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.841084"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[62:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:48.843126",
      "data": {},
      "engine_id": 62,
      "engine_uuid": "44962377-2691158e15e2f2ca732f082c",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_127",
      "outputs": [],
      "received": "2021-07-01T12:48:48.923460",
      "started": "2021-07-01T12:48:23.214309",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.841623"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mOut[63:2]: \u001b[0m255.8632587551305"
      ]
     },
     "metadata": {
      "after": [],
      "completed": "2021-07-01T12:48:50.642466",
      "data": {},
      "engine_id": 63,
      "engine_uuid": "d677c0e8-992305e7cea3c329b62fd2d2",
      "error": null,
      "execute_input": "import numpy as np\nnp.linalg.norm(data, 2)\n",
      "execute_result": {
       "data": {
        "text/plain": "255.8632587551305"
       },
       "execution_count": 2,
       "metadata": {}
      },
      "follow": [],
      "is_broadcast": false,
      "is_coalescing": false,
      "msg_id": "6194cd21-a82164c25c5a1c6f45548f47_128",
      "outputs": [],
      "received": "2021-07-01T12:48:50.706732",
      "started": "2021-07-01T12:48:23.214307",
      "status": "ok",
      "stderr": "",
      "stdout": "",
      "submitted": "2021-07-01T12:48:22.841806"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "%%px\n",
    "import numpy as np\n",
    "np.linalg.norm(data, 2)\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.6"
  },
  "widgets": {
   "application/vnd.jupyter.widget-state+json": {
    "state": {},
    "version_major": 2,
    "version_minor": 0
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
